1. Field of the Invention
The invention relates to client-server communications. Specifically, the invention relates to apparatus, systems, and methods for facilitating delivery of asynchronous response messages queued in a hold queue.
2. Description of the Related Art
Transmission Control Protocol/Internet Protocol (“TCP/IP”) has gained significant popularity in recent years due to its robust suite of services and applications, as well as its almost universal compatibility with other transport technologies and equipment. These features render TCP/IP an optimal transport vehicle for data over networks, including the worldwide Internet, to which corporations and individuals alike link their individual networks.
The vastness and complexity of networks, however, complicate data transport. Indeed, a network may include a complex hierarchy of subnetworks several layers deep. To connect the various subnetworks, routers, gateways, and network interface modules may be implemented to direct a flow of data traffic to a particular destination.
Typically, routing decisions are based on the destination address in the header information of each data packet, as well as on routing information maintained by each router, gateway and nework interface along the route. Since a network interface module generally bears a one to one relationship with a hold queue, for example, a router may request data queued in a hold queue by routing a request message to the network interface module corresponding to the hold queue.
In some applications, however, routing decisions may be largely indiscriminate to facilitate workload balancing between network interface modules. Indeed, clustering technology may incorporate a load optimizer such as Parallel Sysplex® that enables multiple network interface modules to collaborate to provide enhanced availability, increased capacity and workload balancing across a network. This feature may be particularly beneficial to business critical and high volume applications such as sales and other financial transactions. Such systems, however, may inadvertently impair delivery of certain response messages.
Indeed, in some cases, a response message generated in answer to a request message through a first network interface module may be queued in a hold queue associated with a particular second network interface module. This situation may result, for example, where a client-server connection is interrupted before the client receives the requested response message, where the response requires delivery to a second client, or where communication occurs over a heterogeneous environment comprising more than one network. In such a case, the client may send a request to retrieve messages queued in the hold queue. Depending on the network interface module across which such a retrieval request is routed, however, the hold queue may or may not deliver the queued messages. Indeed, for security reasons, the hold queue may only respond to a request message routed across its associated network interface module. This problem may be exacerbated in a high availability communications environment where routing decisions are based on workload balance rather than a network interface module-specific route.
Such miscommunication may compromise the speed and reliability of data transfer. Indeed, available bandwidth and memory may be reduced as a result of a network congested with repetitive requests for data maintained in a hold queue associated with a different network interface module. Such miscommunication may also compromise data security by necessitating multiple requests for queued data, issued in an effort to pass the request over the network interface module associated with the queue of interest.
From the foregoing discussion, it should be apparent that a need exists for an apparatus, system, and method that facilitates delivery of asynchronous response messages to a client. Beneficially, such an apparatus, system, and method would provide reliable data transfer, increase data transfer speed, and decrease data security risks. Such an apparatus, system, and method are disclosed and claimed herein.